package com.mf.ergate.web.service.monitor.impl;

import com.mf.ergate.api.monitor.LoginLogRemoteService;
import com.mf.ergate.api.monitor.model.dto.LoginLogCreateDto;
import com.mf.ergate.api.monitor.model.dto.LoginLogDeleteDto;
import com.mf.ergate.api.monitor.model.dto.LoginLogQueryDto;
import com.mf.ergate.api.monitor.model.dto.LoginLogUpdateDto;
import com.mf.ergate.api.monitor.model.vo.LoginLogVo;
import com.mf.ergate.web.common.utils.MfParamUtils;
import com.mf.ergate.web.service.monitor.LoginLogService;
import com.mf.framework.common.model.Page;
import com.mf.framework.common.model.RemotePage;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;

/**
* 登录日志Service层实现类
* User: zhaoming
* DateTime: 2019-02-12
* To change this template use File | Settings | File Templates.
**/
@Service
public class LoginLogServiceImpl implements LoginLogService {

    private Logger logger = LoggerFactory.getLogger(getClass());

    @Autowired
    private LoginLogRemoteService loginLogRemoteService;
    
    /**
     * 新增
     * @param loginLogCreateDto 登录日志新增Dto
     * @return 登录日志
     */
    public LoginLogVo insert(LoginLogCreateDto loginLogCreateDto){
        return loginLogRemoteService.insert(loginLogCreateDto).getContent();
    }
    
    /**
     * 根据唯一编号更新
     * @param loginLogUpdateDto 登录日志更新Dto
     * @return 执行结果
     */
    public Boolean updateByUniqueNo(LoginLogUpdateDto loginLogUpdateDto){
        return loginLogRemoteService.updateByUniqueNo(loginLogUpdateDto).getContent();
    }
    
    /**
     * 根据唯一编号删除(逻辑删除)
     * @param loginLogDeleteDto 登录日志删除Dto
     * @return 执行结果
     */
    public Boolean deleteByUniqueNo(LoginLogDeleteDto loginLogDeleteDto){
        return loginLogRemoteService.deleteByUniqueNo(loginLogDeleteDto).getContent();
    }
    
    /**
     * 根据唯一编号查询
     * @param loginLogNo 登录日志编号
     * @return 登录日志
     */
    public LoginLogVo selectByUniqueNo(String loginLogNo){
        return loginLogRemoteService.selectByUniqueNo(loginLogNo).getContent();
    }
    
    /**
     * 根据条件查询
     * @param loginLogQueryDto 登录日志查询Dto
     * @return 登录日志列表
     */
    public List<LoginLogVo> selectByCondition(LoginLogQueryDto loginLogQueryDto){
        return loginLogRemoteService.selectByCondition(loginLogQueryDto).getContent();
    }

    /**
     * 根据条件查询数量
     * @param loginLogQueryDto 登录日志查询Dto
     * @return 数量
     */
    public Integer selectCount(LoginLogQueryDto loginLogQueryDto){
        return loginLogRemoteService.selectCount(loginLogQueryDto).getContent();
    }

    /**
     * 根据条件分页查询
     * @param page 远程分页
     * @param loginLogQueryDto 登录日志查询Dto
     * @return 登录日志分页列表
     */
    public Page<LoginLogVo> selectPage(Page page, LoginLogQueryDto loginLogQueryDto){
        return loginLogRemoteService.selectPage(new RemotePage<>(loginLogQueryDto, page)).getContent();
    }

}
